package com.ruihao.cetralizelogin.commons.model;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 菜单模型
 * @author sly
 * @time 2019年9月9日
 */
public class Menu implements Serializable {
    private static final long serialVersionUID = -311510319098128259L;

    /** ID varchar(50) not null comment '主键ID' */
    private String id;
    /** PARENT_ID varchar(50) comment '父ID' */
    private String parentId;
    /** PARENT_CODE varchar(50) comment '父菜单编码' */
    private String parentCode;
    /** PARENT_NAME varchar(50) comment '父菜单名称' */
    private String parentName;
    /** PARENT_TYPE char(1) comment '父菜单类型（2：目录菜单、3：叶子菜单、4：按钮）' */
    private String parentType;
    /** PARENT_URL varchar(500) comment '父菜单URL' */
    private String parentUrl;
    /** PARENT_LEVEL int(9) comment '父菜单层级数（从1级菜单开始算）' */
    private Integer parentLevel;
    /** MENU_CODE varchar(50) comment '菜单编码' */
    private String menuCode;
    /** MENU_NAME varchar(50) comment '菜单名称' */
    private String menuName;
    /** MENU_URL varchar(500) comment '菜单URL' */
    private String menuUrl;
    /** MENU_TYPE char(1) comment '菜单类型（2：目录菜单、3：叶子菜单、4：按钮）' */
    private String menuType;
    /** MENU_LEVEL int(9) comment '菜单层级数（从1级菜单开始算）' */
    private Integer menuLevel;
    /** SORT_NUM int(9) comment '排序号' */
    private Integer sortNum;
    /** REMARK varchar(500) comment '菜单描述' */
    private String remark;
    /** SYSTEM_ID varchar(50) comment '所属系统ID' */
    private String systemId;
    /** CREATE_TIME datetime NULL创建时间 */
    private Date createTime;
    /** CREATE_USER varchar(50) NULL创建人(账号) */
    private String createUser;

    // 拓展字段
    /** 子菜单list */
    private List<Menu> childMenus;
    /** 系统名称 */
    private String systemName;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public String getParentCode() {
        return parentCode;
    }

    public void setParentCode(String parentCode) {
        this.parentCode = parentCode;
    }

    public String getParentName() {
        return parentName;
    }

    public void setParentName(String parentName) {
        this.parentName = parentName;
    }

    public String getParentType() {
        return parentType;
    }

    public void setParentType(String parentType) {
        this.parentType = parentType;
    }

    public String getParentUrl() {
        return parentUrl;
    }

    public void setParentUrl(String parentUrl) {
        this.parentUrl = parentUrl;
    }

    public Integer getParentLevel() {
        return parentLevel;
    }

    public void setParentLevel(Integer parentLevel) {
        this.parentLevel = parentLevel;
    }

    public String getMenuCode() {
        return menuCode;
    }

    public void setMenuCode(String menuCode) {
        this.menuCode = menuCode;
    }

    public String getMenuName() {
        return menuName;
    }

    public void setMenuName(String menuName) {
        this.menuName = menuName;
    }

    public String getMenuUrl() {
        return menuUrl;
    }

    public void setMenuUrl(String menuUrl) {
        this.menuUrl = menuUrl;
    }

    public String getMenuType() {
        return menuType;
    }

    public void setMenuType(String menuType) {
        this.menuType = menuType;
    }

    public Integer getMenuLevel() {
        return menuLevel;
    }

    public void setMenuLevel(Integer menuLevel) {
        this.menuLevel = menuLevel;
    }

    public Integer getSortNum() {
        return sortNum;
    }

    public void setSortNum(Integer sortNum) {
        this.sortNum = sortNum;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getSystemId() {
        return systemId;
    }

    public void setSystemId(String systemId) {
        this.systemId = systemId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public List<Menu> getChildMenus() {
        return childMenus;
    }

    public void setChildMenus(List<Menu> childMenus) {
        this.childMenus = childMenus;
    }

    public String getSystemName() {
        return systemName;
    }

    public void setSystemName(String systemName) {
        this.systemName = systemName;
    }
}
